.flex() {
  display: flex;
  align-items: center;
}

@active-color: #ff4e56;

.radio_wrap {
  position: relative;
  .flex();

  input[type='radio'] {
    width: 46px;
    height: 46px;
    opacity: 0;
  }
  .label {
    position: absolute;
    left: 5px;
    top: 3px;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: 1px solid #c9c9c9;
    &:after {
      opacity: 0;
      transform: rotate(45deg) scale(0);
      transition-delay: 0.1s;
      transition: all 0.3s ease;
    }
  }
  input:checked + .label {
    background-color: @active-color;
    border: 1px solid @active-color;
    :global {
      animation: fadeIn 600ms ease;
    }
    &::after {
      position: absolute;
      content: '';
      width: 10px;
      height: 20px;
      top: 5px;
      left: 12px;
      border: 2px solid #fff;
      border-top: none;
      border-left: none;
      opacity: 1;
      transform: rotate(45deg) scale(1);
    }
  }
  .label_value {
    margin-left: 16px;
  }

  input:checked ~ .label_value {
    color: @active-color;
  }
  &:not(:last-child) {
    margin-right: 58px;
  }
}
